import Vue from "vue";
import Vuex, { Store } from "vuex";

// 安装插件
Vue.use(Vuex);

// 创建 Store 对象
const store = new Vuex.Store({
  state: {
    cartList: [],
  },
  mutations: {
    addToCart(state, payload) {
      return new Promise((resolve, reject) => {
        // 查找cartList数组中是否有payload，如果有，将payload赋值给product，product的count+1；如果没有，将payload的count=1，并添加到cartList数组中。
        let product = state.cartList.find((item) => item.iid === payload.iid);
        if (product) {
          // 商品数量+1
          product.count++;
          resolve("当前商品数量+1");
        } else {
          // 添加新的商品
          payload.count = 1;
          state.cartList.push(payload);
          resolve("添加成功，在购物车等亲");
        }
      });
    },
  },
});

// 挂载到 Vue 实例上
export default store;
